版块导航
简介
Arduino Leonardo是基于ATmega32u4的微控制器板。它具有20个数字输入/输出引脚(其中7个可用作PWM输出,而12个用作模拟输入),一个16 MHz晶体振荡器,一个微型USB连接,一个电源插孔,一个ICSP接头和一个复位按钮。它包含支持微控制器所需的一切;只需使用USB电缆将其连接到计算机,或使用AC-DC适配器或电池为它供电即可开始使用。
Leonardo与所有先前的板卡不同之处在于,ATmega32u4具有内置的USB通信功能,从而无需辅助处理器。除了虚拟(CDC)串行/ COM端口之外,这还使Leonardo可以像鼠标和键盘一样在连接的计算机上显示。
开发板靓照
技术规格
微控制器 | ATmega32u4 |
工作电压 | 5伏 |
输入电压(推荐) | 7-12V |
输入电压(极限) | 6-20V |
数字I / O引脚 | 20个 |
PWM通道 | 7个 |
模拟输入通道 | 12个 |
每个I / O引脚的直流电流 | 40毫安 |
3.3V引脚的直流电流 | 50毫安 |
Flash容量 | 32 KB(ATmega32u4),其中的4 KB由引导加载程序使用 |
SRAM | 2.5 KB(ATmega32u4) |
EEPROM | 1 KB(ATmega32u4) |
时钟速度 | 16兆赫 |
长度 | 68.6毫米 |
宽度 | 53.3毫米 |
重量 | 20克 |
技术资料
可以使用Arduino软件对Leonardo进行编程。选择Tool>board>Arduino Leonardo(根据你的控制器型号选择)。在Arduino的Leonardo的ATmega32U4自带预烧了引导程序 ,它允许你上传新的代码,它不使用外部硬件编程器,它使用AVR109协议进行通信;您也可以绕过引导加载程序,并使用Arduino ISP 或类似产品通过ICSP(在线串行编程)标头对微控制器进行编程 。
Arduino Leonardo可以通过微型USB连接或外部电源供电。电源是自动选择的。
外部(非USB)电源可以来自AC-DC适配器(壁式电源适配器)或电池。可以通过将2.1mm中心正插头插入板子的电源插孔来连接适配器。可以将电池的导线插入POWER连接器的Gnd和Vin引脚接头中。
电源引脚如下:
VIN Arduino板使用外部电源时的输入电压(与USB连接或其他稳压电源提供的5伏电压相反)。您可以通过该引脚供电,或者,如果通过电源插孔供电,则可以通过该引脚供电。
5V 稳压电源用于为板上的微控制器和其他组件供电。这既可以通过板载稳压器从VIN发出,也可以通过USB或其他5V稳压电源供电。
3V3 板载稳压器产生3.3伏电源。最大电流消耗为50 mA。
GND 接地引脚。
IOREF 板卡的I / O引脚工作时的电压(即板卡的VCC)。这是Leonardo上的5V。
ATmega32u4具有32 KB(其中4 KB用于引导加载程序)。它还具有2.5 KB的SRAM和1 KB的EEPROM(可以通过EEPROM库进行读写 )。
可以使用pinMode(), digitalWrite()和 digitalRead() 函数将Leonardo上的20个数字I / O引脚中的每个用作输入或输出。它们在5伏特下工作。每个引脚最多可提供或接收40 mA的电流,并具有20-50 kOhms的内部上拉电阻(默认情况下已断开)。
此外,某些引脚还具有特殊功能:
串行:0(RX)和1(TX)用于使用ATmega32U4硬件串行功能接收(RX)和发送(TX)TTL串行数据。请注意,在Leonardo上,“串行”类是指USB(CDC)通信。对于引脚0和1上的TTL串行,请使用Serial1类。
TWI:2(SDA)和3(SCL)。使用Wire库支持TWI通信 。
外部中断:3(中断0),2(中断1),0(中断2),1(中断3)和7(中断4)。这些引脚可以配置为在低值,上升沿或下降沿或值变化时触发中断。有关 详细信息,请参见 attachInterrupt()函数。
PWM:3、5、6、9、10、11和13。提供带有AnalogWrite() 函数的8位PWM输出 。
SPI:位于ICSP头上。这些引脚支持使用SPI库的 SPI通信 。请注意,SPI引脚未连接到任何数字I / O引脚,就像在Uno上一样,它们仅在ICSP连接器上可用。这意味着,如果您具有使用SPI的屏蔽,但没有连接到Leonardo的6引脚ICSP接头连接器的6引脚ICSP连接器,则该屏蔽将无法工作。
LED:13.数字引脚13上有一个内置LED。当该引脚为HIGH时,该LED点亮;当该引脚为LOW时,其熄灭。
模拟输入:A0-A5,A6-A11(在数字引脚4、6、8、9、10和12上)。Leonardo有12个模拟输入,分别标记为A0至A11,所有这些也可以用作数字I / O。引脚A0-A5出现在与Uno相同的位置;输入A6-A11分别位于数字I / O引脚4、6、8、9、10和12上。每个模拟输入提供10位分辨率(即1024个不同值)。默认情况下,模拟输入的测量范围是从地到5伏,尽管可以使用AREF引脚和AnalogReference()函数更改其范围的上限 。
板上还有几个其他引脚:
AREF 模拟输入的参考电压。与 analogReference()一起使用。
Reset 将此线拉低以复位微控制器。通常用于在屏蔽板上添加一个重置按钮,以屏蔽板上的一个按钮。
Leonardo具有许多用于与计算机,另一个Arduino或其他微控制器通信的工具。ATmega32U4提供UART TTL(5V)串行通信,可在数字引脚0(RX)和1(TX)上使用。32U4还允许通过USB进行串行(CDC)通信,并显示为计算机上软件的虚拟com端口。该芯片还使用标准USB COM驱动程序充当全速USB 2.0设备。 在Windows上,需要.inf文件。Arduino软件包括一个串行监视器,该监视器允许将简单的文本数据发送到Arduino板或从Arduino板发送。当通过USB连接将数据传输到计算机时,板上的RX和TX LED指示灯将闪烁(但对于引脚0和1上的串行通信则不是)。一个 软件串行库 允许在Leonardo的任何数字引脚上进行串行通信。ATmega32U4还支持I2C(TWI)和SPI通信。Arduino软件包括一个Wire库,以简化I2C总线的使用; 有关详细信息,请参见 文档。对于SPI通信,请使用 SPI库。Leonardo显示为通用键盘和鼠标,并且可以使用键盘和鼠标 类进行编程以控制这些输入设备 。
Leonardo不需要在上传之前物理按下复位按钮,而是通过允许在连接的计算机上运行的软件进行复位的方式设计的。当Leonardo的虚拟(CDC)串行/ COM端口以1200波特率打开然后关闭时,触发复位。发生这种情况时,处理器将重置,断开与计算机的USB连接(这意味着虚拟串行/ COM端口将消失)。处理器复位后,引导程序将启动,并保持活动状态约8秒钟。引导加载程序也可以通过按Leonardo上的重置按钮来启动。请注意,板子第一次加电时,它将直接跳到用户草图(如果存在),而不是启动引导加载程序。 由于Leonardo处理复位的方式,最好让Arduino软件在上载之前尝试启动复位,尤其是如果您习惯在上载其他板之前先按复位按钮。如果软件无法重置主板,则可以始终通过按主板上的重置按钮来启动引导加载程序。
Leonardo具有可复位的多熔丝,可保护计算机的USB端口免受短路和过电流的影响。尽管大多数计算机提供了自己的内部保护,但保险丝提供了额外的保护层。如果对USB端口施加的电流超过500 mA,则保险丝将自动断开连接,直到消除短路或过载为止。
Leonardo PCB的最大长度和最大宽度分别为2.7英寸和2.1英寸,USB连接器和电源插孔的尺寸超出了先前的尺寸。四个螺孔可将电路板固定在表面或外壳上。请注意,数字引脚7和8之间的距离为160密耳(0.16英寸),而不是其他引脚100密耳间距的偶数倍。